Garbage Collection for Large Memory JAVA Applications
نویسندگان
چکیده
The possible applications of Java range from small applets to large, data-intensive scientiic applications allocating memory in the multi-gigabyte range. As a consequence copying garbage collectors can not fullll the requirements, as large objects can not be copied eeciently. We analyze the allocation patterns and object lifespans for diierent Java applications and present garbage collection techniques for these. Various heuristics to reduce fragmentation are compared. We propose just{in{ time generated customized marker functions as a promising optimization during the mark{phase.
منابع مشابه
The Heap of the Living Dead: Post-mortem Memory Profiling for Java Applications
Managed memory, i.e., garbage collected memory, has gained wide-spread use because it relieves the programmer from freeing heap objects manually and allows for fast allocations. However, these advantages come at the cost of a difficult to understand memory manager and garbage collector. Therefore, searching for memory-related performance degredations is a tedious task because the reasons for sl...
متن کاملA Quantitative Analysis of Space Waste from Java Strings and its Elimination at Garbage Collection Time
This paper describes a novel approach to reduce the memory consumption of Java programs, by reducing the string memory waste in the runtime. In recent Java applications, string data occupies a large amount of the heap area. For example, more than 30% of the live heap area is used for string data when WebSphere Application Server with Trade6 is running. By investigating the string data in real J...
متن کاملTuning Java Garbage Collection for Spark Applications
Spark is gaining wide industry adoption due to its superior performance, simple interfaces, and a rich library for analysis and calculation. Like many projects in the big data ecosystem, Spark runs on the Java Virtual Machine (JVM). Because Spark can store large amounts of data in memory, it has a major reliance on Java’s memory management and garbage collection (GC). New initiatives like Proje...
متن کاملCRAMM: Cooperative Robust Automatic Memory Management
C Project Description Programming languages that rely on garbage collection are becoming ubiquitous. Java and C# are especially popular. Both languages provide numerous software engineering advantages over languages like C and C++. The advantages of garbage collection include safety from accidental memory overwrites, protection from security violations, and the automatic prevention of space lea...
متن کاملCompiler-Cooperative Memory Management in Java
Dynamic memory management is a known performance bottleneck of Java applications. The problem arises out of the Java memory model in which all objects (non-primitive type instances) are allocated on the heap and reclaimed by garbage collector when they are no longer needed. This paper presents a simple and fast algorithm for inference of object lifetimes. Given the analysis results, a Java comp...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 1999